05. Software Safety Life-cycle
Software Safety Requirements, Architecture, Testing and Integration
L6 09 Software Safety Requirments Architecture Testing And Intergration
Software V diagram
In the video, we simplified the software safety V model to show that the software safety life-cycle involves the same four steps as other levels of the functional safety analysis:
- specifying safety requirements
- designing an architecture and allocating the requirements to the architecture
- software testing
- software integration
Here is a slightly more detailed version of the software safety life-cycle:
Developing a software architecture should consider both safety and non-safety requirements. Software safety requirements and software product requirements cannot be separated into two different architectures; a software architecture will be a mixture of product requirements and safety requirements.
An architectural design might involve multiple micro-controllers or ECUs. So software interfaces, data paths, process sequences and timing behaviors need to be specified.
Software Units
Software architectures are often further refined into smaller pieces called units. So technical safety requirements lead to software safety requirements, which are further refined into software safety unit requirements. Unit requirements then lead to further refinements of the architecture.
Test Specifications
On the right side of the V model, test specifications and test cases are derived from the safety requirements. Remember that the V model has hierarchical levels. As you go up the V model integrating software with higher system levels, each stage will require its own testing.